LAMMPS (8 Feb 2023)
  using 1 OpenMP thread(s) per MPI task
# Two ions, a cation and an anion, confined between two interfaces: epsilon1 | epsilon2  | epsilon1
# The interface normal vectors should be consistent with ed, pointing from region with epsilon1 to that with epsilon2
# bottom interface: n = (0, 0, 1)
# top interface:    n = (0, 0, -1)
# so that ed's are the same for both interfaces

# Dielectric constants can be set to be different from the input data file

variable epsilon1 index 20
variable epsilon2 index 10

variable    data index data.confined

newton off
units       lj
atom_style  dielectric
atom_modify map array
dimension   3
boundary    p p f

variable    method index gmres  # gmres = BEM/GMRES
                                # icc   = BEM/ICC*
                                # dof   = Direct optimization of the functional
                                # none

# compute the relevant values for the interface particles

variable ed      equal "v_epsilon2 - v_epsilon1"
variable em      equal "(v_epsilon2 + v_epsilon1)/2"
variable epsilon equal 1.0                             # epsilon at the patch, not used for now
variable area    equal 0.866                           # patch area, same as in the data file

read_data   ${data}
read_data   data.confined
Reading data file ...
  orthogonal box = (0 0 0) to (40.000006 43.301277 40)
  1 by 1 by 1 MPI processor grid
WARNING: Atom style in data file differs from currently defined atom style (src/read_data.cpp:620)
  reading atoms ...
  4002 atoms
Finding 1-2 1-3 1-4 neighbors ...
  special bond factors lj:    0        0        0       
  special bond factors coul:  0        0        0       
     0 = max # of 1-2 neighbors
     0 = max # of 1-3 neighbors
     0 = max # of 1-4 neighbors
     1 = max # of special neighbors
  special bonds CPU = 0.001 seconds
  read_data CPU = 0.013 seconds

group interface type 1
4000 atoms in group interface
group ions type 2 3
2 atoms in group ions

group cations type 2
1 atoms in group cations
group anions  type 3
1 atoms in group anions

# set the dielectric constant of the medium where the ions reside

set group cations epsilon ${epsilon2}
set group cations epsilon 10
Setting atom values ...
  1 settings made for epsilon
set group anions  epsilon ${epsilon2}
set group anions  epsilon 10
Setting atom values ...
  1 settings made for epsilon

pair_style      lj/cut/coul/long/dielectric 1.122 10.0
pair_coeff      * * 1.0 1.0
pair_coeff      1 1 0.0 1.0

kspace_style    pppm/dielectric 0.0001
kspace_modify   slab 3.0

neigh_modify    every 1 delay 0 check yes one 5000

#compute         ef all efield/atom
#dump            1 all custom 100 all.dump id mol type q x y z #fx fy fz c_ef[1] c_ef[2] c_ef[3]
#dump            2 interface custom 100 interface.dump id mol type q x y z #fx fy fz c_ef[1] c_ef[2] c_ef[3]
#dump_modify     1 sort id

#dump            3 ions custom 100 ions.dump id mol type q x y z fx fy fz #c_ef[1] c_ef[2] c_ef[3]

fix             1 ions nve

# fix modify is used to set the properties of the interface particle group

if "${method} == gmres" then   "fix             3 interface polarize/bem/gmres 1 1.0e-4"   "fix_modify      3 itr_max 50 dielectrics ${ed} ${em} ${epsilon} ${area} NULL" elif "${method} == icc"  "fix             3 interface polarize/bem/icc 1 1.0e-4"   "fix_modify      3 itr_max 50 dielectrics ${ed} ${em} ${epsilon} ${area} NULL" elif "${method} == dof"   "fix             3 interface polarize/functional 1 0.0001"   "fix_modify      3 dielectrics ${ed} ${em} ${epsilon} ${area} NULL" else   "print 'Unsupported polarization solver' "
fix             3 interface polarize/functional 1 0.0001
fix_modify      3 dielectrics ${ed} ${em} ${epsilon} ${area} NULL
fix_modify      3 dielectrics -10 ${em} ${epsilon} ${area} NULL
fix_modify      3 dielectrics -10 15 ${epsilon} ${area} NULL
fix_modify      3 dielectrics -10 15 1 ${area} NULL
fix_modify      3 dielectrics -10 15 1 0.866 NULL

thermo          1000
thermo_style    custom step evdwl ecoul elong epair #f_3
thermo_modify   flush yes

run             0

CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE

Your simulation uses code contributions which should be cited:

- DIELECTRIC package: doi:10.1016/j.cpc.2019.03.006

@Article{TrungCPC19,
 author = {Trung Dac Nguyen and Honghao Li and Debarshee Bagchi and   Francisco J. Solis and Olvera de la Cruz, Monica}
 title = {Incorporating Surface Polarization Effects Into Large-Scale
   Coarse-Grained Molecular Dynamics Simulation},
 journal = {Comput.\ Phys.\ Commun.},
 year =    2019,
 volume =  241,
 pages =   {80--91}
}

CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE

PPPM initialization ...
  using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
  G vector (1/distance) = 0.24260797
  grid = 12 12 36
  stencil order = 5
  estimated absolute RMS force accuracy = 2.5219574e-07
  estimated relative force accuracy = 2.5219574e-07
  using double precision KISS FFT
  3d grid and FFT values/proc = 10982 5184
Generated 0 of 3 mixed pair_coeff terms from geometric mixing rule
Direct solver using a variational approach for 4000 induced charges
Neighbor list info ...
  update: every = 1 steps, delay = 0 steps, check = yes
  max neighbors/atom: 5000, page size: 100000
  master list distance cutoff = 10.3
  ghost atom cutoff = 10.3
  binsize = 5.15, bins = 8 9 8
  2 neighbor lists, perpetual/occasional/extra = 2 0 0
  (1) pair lj/cut/coul/long/dielectric, perpetual
      attributes: full, newton off
      pair build: full/bin
      stencil: full/bin/3d
      bin: standard
  (2) fix polarize/functional, perpetual, copy from (1)
      attributes: full, newton off
      pair build: copy
      stencil: none
      bin: none
Per MPI rank memory allocation (min/avg/max) = 753.9 | 753.9 | 753.9 Mbytes
   Step         E_vdwl         E_coul         E_long         E_pair    
         0   0              0             -1.8534698e-05 -1.8534698e-05
Loop time of 1.622e-06 on 1 procs for 0 steps with 4002 atoms

185.0% CPU use with 1 MPI tasks x 1 OpenMP threads

MPI task timing breakdown:
Section |  min time  |  avg time  |  max time  |%varavg| %total
---------------------------------------------------------------
Pair    | 0          | 0          | 0          |   0.0 |  0.00
Bond    | 0          | 0          | 0          |   0.0 |  0.00
Kspace  | 0          | 0          | 0          |   0.0 |  0.00
Neigh   | 0          | 0          | 0          |   0.0 |  0.00
Comm    | 0          | 0          | 0          |   0.0 |  0.00
Output  | 0          | 0          | 0          |   0.0 |  0.00
Modify  | 0          | 0          | 0          |   0.0 |  0.00
Other   |            | 1.622e-06  |            |       |100.00

Nlocal:           4002 ave        4002 max        4002 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost:           4832 ave        4832 max        4832 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs:              0 ave           0 max           0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs:  1.51316e+06 ave 1.51316e+06 max 1.51316e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0

Total # of neighbors = 1513160
Ave neighs/atom = 378.10095
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0





Total wall time: 0:00:05
